package org.itheima.googleplay.ui.holder;

import android.view.View;

/**
 * @包名: org.itheima.googleplay.ui.holder
 * @类名: BaseHolder
 * @作者: 肖琦
 * @创建时间 : 2015-3-20 下午4:58:27
 * 
 * @描述: MVC中C，用来控制视图和数据，对视图和数据进行合理的显示
 * 
 * @SVN版本: $Rev: 10 $
 * @更新人: $Author: xq $
 * @更新时间: $Date: 2015-03-22 09:37:16 +0800 (星期日, 22 三月 2015) $
 * 
 * @更新描述:
 */
public abstract class BaseHolder<T>
{
	protected View	mRootView;
	protected T		mData;

	public BaseHolder() {
		mRootView = initView();

		// 打标记
		mRootView.setTag(this);
	}

	protected abstract View initView();

	protected abstract void refreshUI(T data);

	public void setData(T data)
	{
		this.mData = data;

		// UI刷新
		refreshUI(mData);
	}

	public View getRootView()
	{
		return mRootView;
	}
}
